package com.itheima.dao;

import com.github.pagehelper.Page;
import com.itheima.pojo.Role;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

/**
 * @author mengwei
 * @date 2019/8/21
 * @desc
 */
public interface RoleDao {
    Set<Role> findRolesByUserId(Integer id);

    Page<Role> findByCondition(String queryString);

    void add(Role role);

    void setPermissions(@Param("roleId") Integer id, @Param("permissionId") Integer permissionId);

    void setMenus(@Param("roleId") Integer id,@Param("menuId") Integer menuId);

    void edit(Role role);

    void delPermissions(Integer id);

    void delMenus(Integer id);

    Long findUserCountByRoleId(int roleId);

    void delById(int roleId);

    Integer[] findPermissions(Integer roleId);

    Integer[] findMenus(Integer roleId);

    List<Role> findAll();
}
